#ifndef __RINGBUFF8_H__
#define __RINGBUFF8_H__

#include <stdint.h>
#include <stdbool.h>

struct ringbuffer8;
typedef struct ringbuffer8 *ringbuffer8_t;

ringbuffer8_t rb8_init(ringbuffer8_t rb, uint32_t size);
bool rb8_empty(ringbuffer8_t rb);
bool rb8_full(ringbuffer8_t rb);
bool rb8_put(ringbuffer8_t rb, uint8_t data);
bool rb8_puts(ringbuffer8_t rb, uint8_t *data, uint32_t size);
bool rb8_get(ringbuffer8_t rb, uint8_t *data);
bool rb8_gets(ringbuffer8_t rb, uint8_t *data, uint32_t size);

#endif /* __RINGBUFF8_H__ */
